package com.blog.service;

import com.blog.bean.domain.DiscussPost;
import com.blog.bean.dto.PostDTO;
import com.blog.bean.vo.PageAndUserVO;
import com.blog.bean.vo.PostAndCommentVO;

/**
 * @author 任浩
 * @version 1.0
 */

public interface DiscussPostService {

    /**
     * 对讨论帖子进行分页查询，展示到页面上。
     * @return
     */
    PageAndUserVO queryPost(int page, int pageNum,Integer userId,Integer scoreMode,Integer unreadUserId);

    /**
     * 发布帖子
     * @param discussPost
     */
    void add(DiscussPost discussPost,Integer userid);

    /**
     * 根据用户id查找
     * @param postDTO
     * @return
     */
    PostAndCommentVO queryPostByUserId(PostDTO postDTO,Integer userId);

    /**
     * 通过帖子id，查找帖子的信息。
     * @param discussPost
     * @return
     */
    DiscussPost queryPostByPostId(DiscussPost discussPost);

    /**
     * 对帖子进行置顶的操作。
     * @param postId
     */
    void setTop(Integer postId);

    /**
     * 对帖子进行加精操作
     * @param postId
     */
    void setWonderful(Integer postId);

    /**
     * 对帖子的删除操作
     * @param postId
     */
    void delete(Integer postId);

    /**
     * //将分数保存到数据库中。
     * @param discussPost
     */
    void updateScore(DiscussPost discussPost);
}
